using System.Collections.Generic;
using MusicStore.Models;

namespace MusicStore.Repo
{
  public interface IMusicStoreRepo
  {
    IList<Album> GetAlbumsGenresAndArtist();
    IList<Album> GetAllAlbums();
    int PlaceOrder(Order order);
    decimal GetSalesAmount();
    IList<Sale> GetSales();
    bool IsValidOrder(int id, string username);
    IList<Album> GetTopSellingAlbums(int count);
    Album GetAlbumById(int id);
    IList<Genre> GetAllGenres();
    Genre GetGenreWithAlbums(string GenreName);
    IList<Artist> GetAllArtists();
    int AddAlbum(Album newAlbum);
    void DeleteAlbum(int id);
    void Setup();
  }
}